QT += core gui
QT += network websockets
QT += sql xml qml
QT += multimedia
QT += script scripttools
QT += webchannel
QT += concurrent
QT += serialbus serialport
QT += gui-private

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

win32{
    QT += winextras
}

win32{
    LIBS += -lWs2_32
    DEFINES += WIN32_LEAN_AND_MEAN
}

TEMPLATE = lib
Debug: TARGET=qtCoreD
Release: TARGET=qtCore

win32{
    QMAKE_LFLAGS_RELEASE += /MAP
    QMAKE_CFLAGS_RELEASE += /Zi
    QMAKE_LFLAGS_RELEASE += /debug /opt:ref

    #Release编译,生成*.pdb调试文件
    QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
    QMAKE_LFLAGS_RELEASE += $$QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO

    #tcmalloc
    #1.编译extends目录下gperftools-2.10.zip,编译成DLL模式，静态库模式测试有问题
    #2.在extends目录下建立目录tcmalloc，然后拷贝libtcmalloc_minimal.lib到目录下,
    #  libtcmalloc_minimal.dll拷贝到执行目录下
    CONFIG(release,debug|release){
        QMAKE_LFLAGS_RELEASE += /INCLUDE:"__tcmalloc"
    }else{
        QMAKE_LFLAGS_DEBUG += /INCLUDE:"__tcmalloc"
    }
}else{
    #tcmalloc
    #1.解压extends目录下gperftools-2.10.zip
    #2../configure --prefix=/usr/local --disable-cpu-profiler --disable-heap-profiler
    #    --disable-heap-checker --disable-debugalloc --enable-minimal
    #3.sudo make
    #4.sudo make install
    #或者
    #sudo apt install libgoogle-perftools4 libgoogle-perftools-dev
    CONFIG(release,debug|release){
        QMAKE_LFLAGS_RELEASE += /INCLUDE:"__tcmalloc"
    }else{
        QMAKE_LFLAGS_DEBUG += /INCLUDE:"__tcmalloc"
    }

    #breakpad
    #下载Breakpad，终端输入 git clone https://gitee.com/ddsweoerwrw/breakpad
    #下载载Breakpad依赖的库，git clone https://github.com/adelshokhy112/linux-syscall-support
    #将linux-syscall-support/lss文件夹拷贝到breakpad/src/third_party目录下
    #编译 ./configure && make && make install
}

CONFIG += staticlib

CONFIG += NO_UNIT_TESTS
CONFIG += QMQTT_NO_SSL
CONFIG += QMQTT_WEBSOCKETS

CONFIG += c++11

# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

# Default rules for deployment.
unix {
    target.path = $$[QT_INSTALL_PLUGINS]/generic
}
!isEmpty(target.path): INSTALLS += target

DESTDIR = $$PWD/libs
#DLLDESTDIR = $$PWD/../../bin

#####################ENABLEREMOTEVOICE#########################
#INCLUDEPATH +=  $$PWD/extends/ffmpeg/include
###############################################################

#####################ENABLE_REMOTECAMERA#########################
#INCLUDEPATH += C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.7/include \
#               E:/software/rtsp/darknet/ffmpeg-5.0.1-full_build-shared/include \
#               E:/software/rtsp/darknet/darknet-master/darknet-master \
#               E:/software/rtsp/darknet/darknet-master/darknet-master/3rdparty/pthreads/include \
#               E:/software/rtsp/darknet/opencv/build/include
###############################################################

unix {
    INCLUDEPATH +=  /usr/local/include/breakpad \
                    /usr/include/gperftools
}

win32 {
    INCLUDEPATH +=  $$PWD/extends/tcmalloc \
                    $$PWD/extends/berkeleydb/includes \
                    $$PWD/extends/QCefView/include \
                    $$PWD/extends/ffmpeg/include \
                    $$PWD/extends/LuaBridge/Source
}

win32{
    CONFIG(release,debug|release){
        LIBS += $$PWD/extends/irrlicht/libs/Irrlicht.lib

#####################ENABLE_QCEFVIEW#########################
        LIBS += $$PWD/extends/QCefView/lib/QCefView.lib
###############################################################

#####################ENABLE_REMOTECAMERA#########################
#        LIBS += -LC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.7/lib/x64 \
#                -LE:/software/rtsp/darknet/opencv/build/x64/vc15/lib -lopencv_world340 \
#                -LE:/software/rtsp/darknet/darknet-master/darknet-master/build/darknet/x64 -lyolo_cpp_dll \
#                -LE:/software/rtsp/darknet/ffmpeg-5.0.1-full_build-shared/lib \
#                    -lswscale -lswresample -llibmfx -lavutil -lavformat -lavfilter -lavdevice -lavcodec
###############################################################

#####################ENABLEREMOTEVOICE#########################
#        LIBS += -L$$PWD/extends/ffmpeg/lib \
#                -lavcodec -lavdevice -lavfilter -lavformat -lavutil -lpostproc -lswresample -lswscale -llibmfx
###############################################################

#####################TCMALLOC##################################
        LIBS += $$PWD/extends/tcmalloc/libtcmalloc_minimal.lib
###############################################################

#####################berkeleydb##################################
        LIBS += $$PWD/extends/berkeleydb/libdb61.lib
###############################################################
    }else{
        LIBS += $$PWD/extends/irrlicht/libs/Irrlicht.lib

#####################ENABLE_QCEFVIEW#########################
        LIBS += $$PWD/extends/QCefView/lib/QCefView.lib
###############################################################

#####################ENABLE_REMOTECAMERA#########################
#        LIBS += -LC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.7/lib/x64 \
#                -LE:/software/rtsp/darknet/opencv/build/x64/vc15/lib -lopencv_world340 \
#                -LE:/software/rtsp/darknet/darknet-master/darknet-master/build/darknet/x64 -lyolo_cpp_dll \
#                -LE:/software/rtsp/darknet/ffmpeg-5.0.1-full_build-shared/lib \
#                    -lswscale -lswresample -llibmfx -lavutil -lavformat -lavfilter -lavdevice -lavcodec
###############################################################

#####################ENABLEREMOTEVOICE#########################
#        LIBS += -L$$PWD/extends/ffmpeg \
#                -lavcodec -lavdevice -lavfilter -lavformat -lavutil -lpostproc -lswresample -lswscale -llibmfx
###############################################################

#####################TCMALLOC##################################
        LIBS += $$PWD/extends/tcmalloc/libtcmalloc_minimal.lib
###############################################################

#####################berkeleydb##################################
        LIBS += $$PWD/extends/berkeleydb/libdb61.lib
###############################################################
    }
}else{
    CONFIG(release,debug|release){
        LIBS += /usr/local/lib/libbreakpad.a \
                /usr/local/lib/libbreakpad_client.a
        LIBS += /usr/local/lib/libtcmalloc_minimal.a
    }else{
        LIBS += /usr/local/lib/libbreakpad.a \
                /usr/local/lib/libbreakpad_client.a
        LIBS += /usr/local/lib/libtcmalloc_minimal.a
    }
}

RESOURCES += \
    libqtcore.qrc

unix{
    HEADERS += \
        includes/3d/cmy3dwidget.h \
        includes/common/NedAllocatedObject.h \
        includes/common/NedAllocatorImpl.h \
        includes/common/Scheduledtasks.h \
        includes/common/malloc.c.h \
        includes/common/nedmalloc.h \
        includes/common/singleton.h \
        includes/common/common.h \
        includes/common/rc4.h \
        includes/common/cJSON.h \
        includes/common/CJsonObject.hpp \
        includes/common/resourcemanager.h \
        includes/common/fastlz.h \
        includes/common/quicklz.h \
        includes/common/ctranslate.h \
        includes/common/SystemTrayIcon.h \
        includes/common/singleapplication.h \
        includes/common/packagemanager.h \
        includes/QsLog/QsLog.h \
        includes/QsLog/QsLogDest.h \
        includes/QsLog/QsLogDestConsole.h \
        includes/QsLog/QsLogDestFile.h \
        includes/QsLog/QsLogDestFunctor.h \
        includes/QsLog/QsLogDisableForThisFile.h \
        includes/QsLog/QsLogLevel.h \
        includes/database/ndbpool/mssqldataprovider.h \
        includes/database/ndbpool/ndbpool.h \
        includes/database/ndbpool/ndbpool_p.h \
        includes/database/ndbpool/recordset.h \
        includes/database/ndbpool/sqlitedataprovider.h \
        includes/database/SQLiteCpp/sqlite3.h \
        includes/database/SQLiteCpp/Assertion.h \
        includes/database/SQLiteCpp/Backup.h \
        includes/database/SQLiteCpp/Column.h \
        includes/database/SQLiteCpp/Database.h \
        includes/database/SQLiteCpp/Exception.h \
        includes/database/SQLiteCpp/ExecuteMany.h \
        includes/database/SQLiteCpp/SQLiteCpp.h \
        includes/database/SQLiteCpp/SQLiteCppExport.h \
        includes/database/SQLiteCpp/Savepoint.h \
        includes/database/SQLiteCpp/Statement.h \
        includes/database/SQLiteCpp/Transaction.h \
        includes/database/SQLiteCpp/Utils.h \
        includes/database/SQLiteCpp/VariadicBind.h \
        includes/database/tsdb/ctimeseriesdb.h \
        includes/qmqtt/qmqtt.h \
        includes/qmqtt/qmqtt_client.h \
        includes/qmqtt/qmqtt_client_p.h \
        includes/qmqtt/qmqtt_frame.h \
        includes/qmqtt/qmqtt_global.h \
        includes/qmqtt/qmqtt_message.h \
        includes/qmqtt/qmqtt_message_p.h \
        includes/qmqtt/qmqtt_network_p.h \
        includes/qmqtt/qmqtt_networkinterface.h \
        includes/qmqtt/qmqtt_routedmessage.h \
        includes/qmqtt/qmqtt_router.h \
        includes/qmqtt/qmqtt_routesubscription.h \
        includes/qmqtt/qmqtt_socket_p.h \
        includes/qmqtt/qmqtt_socketinterface.h \
        includes/qmqtt/qmqtt_ssl_socket_p.h \
        includes/qmqtt/qmqtt_timer_p.h \
        includes/qmqtt/qmqtt_timerinterface.h \
        includes/qmqtt/qmqtt_websocket_p.h \
        includes/qmqtt/qmqtt_websocketiodevice_p.h \
        includes/scripts/cjsmanager.h \
        includes/scripts/cjsdebugger.h \
        includes/scripts/cluamanager.h \
        includes/scripts/cjsmanager2.h \
        includes/multimedia/cremotecamera.h \
        includes/multimedia/cremotevoice.h \
        includes/multimedia/avilib.h \
        includes/multimedia/czipmanager.h \
        includes/multimedia/smoothcurve.h \
        includes/network/cserialportmanager.h \
        includes/network/ctcpsocketclient.h \
        includes/network/ctcpsocketserver.h \
        includes/network/cudpsocket.h \
        includes/network/httplib.h \
        includes/network/chttpserver.h \
        includes/network/csvnversionclient.h \
        includes/network/csvnversionserver.h \
        includes/network/cwebsocketclient.h \
        includes/network/cwebsocketserver.h \
        includes/network/networkframemanager.h \
        includes/network/JQLibrary/jqdeclare.h \
        includes/network/JQLibrary/jqhttpserver.h \
        includes/network/JQLibrary/jqnet.h \
        includes/network/cequipmentmanagerserver.h \
        includes/network/libhttp.h \
        includes/network/subandpubserver.h \
        includes/network/subandpubclient.h \
        includes/network/cmodbusserver.h \
        includes/network/cmodbusclient.h \
        includes/network/ccanbus.h \
        includes/network/cchatserver.h \
        includes/widgets/libframelesswindow.h \
        includes/widgets/libmaskwidget.h \
        includes/widgets/libcwebuimanager.h \
        includes/widgets/libcmessagebox.h

    SOURCES += \
        src/3d/cmy3dwidget.cpp \
        src/common/NedAllocatedObject.cpp \
        src/common/NedAllocatorImpl.cpp \
        src/common/Scheduledtasks.cpp \
        src/common/common.cpp \
        src/common/nedmalloc.c \
        src/common/rc4.c \
        src/common/resourcemanager.cpp \
        src/common/ctranslate.cpp \
        src/common/SystemTrayIcon.cpp \
        src/common/fastlz.c \
        src/common/cJSON.c \
        src/common/CJsonObject.cpp \
        src/common/quicklz.c \
        src/common/singleapplication.cpp \
        src/common/packagemanager.cpp \
        src/QsLog/QsLog.cpp \
        src/QsLog/QsLogDest.cpp \
        src/QsLog/QsLogDestConsole.cpp \
        src/QsLog/QsLogDestFile.cpp \
        src/QsLog/QsLogDestFunctor.cpp \
        src/database/ndbpool/mssqldataprovider.cpp \
        src/database/ndbpool/ndbpool.cpp \
        src/database/ndbpool/ndbpool_p.cpp \
        src/database/ndbpool/sqlitedataprovider.cpp \
        src/database/ndbpool/recordset.cpp \
        src/database/SQLiteCpp/sqlite3.c \
        src/database/SQLiteCpp/Backup.cpp \
        src/database/SQLiteCpp/Column.cpp \
        src/database/SQLiteCpp/Database.cpp \
        src/database/SQLiteCpp/Exception.cpp \
        src/database/SQLiteCpp/Savepoint.cpp \
        src/database/SQLiteCpp/Statement.cpp \
        src/database/SQLiteCpp/Transaction.cpp \
        src/database/tsdb/ctimeseriesdb.cpp \
        src/qmqtt/qmqtt_client.cpp \
        src/qmqtt/qmqtt_client_p.cpp \
        src/qmqtt/qmqtt_frame.cpp \
        src/qmqtt/qmqtt_message.cpp \
        src/qmqtt/qmqtt_network.cpp \
        src/qmqtt/qmqtt_router.cpp \
        src/qmqtt/qmqtt_routesubscription.cpp \
        src/qmqtt/qmqtt_socket.cpp \
        src/qmqtt/qmqtt_ssl_socket.cpp \
        src/qmqtt/qmqtt_timer.cpp \
        src/qmqtt/qmqtt_websocket.cpp \
        src/qmqtt/qmqtt_websocketiodevice.cpp \
        src/scripts/cjsmanager.cpp \
        src/scripts/cjsdebugger.cpp \
        src/scripts/cluamanager.cpp \
        src/scripts/cjsmanager2.cpp \
        src/multimedia/cremotecamera.cpp \
        src/multimedia/cremotevoice.cpp \
        src/multimedia/avilib.c \
        src/multimedia/czipmanager.cpp \
        src/multimedia/smoothcurve.cpp \
        src/network/cserialportmanager.cpp \
        src/network/ctcpsocketclient.cpp \
        src/network/ctcpsocketserver.cpp \
        src/network/cudpsocket.cpp \
        src/network/csvnversionclient.cpp \
        src/network/csvnversionserver.cpp \
        src/network/cequipmentmanagerserver.cpp \
        src/network/libhttp.cpp \
        src/network/chttpserver.cpp \
        src/network/subandpubserver.cpp \
        src/network/subandpubclient.cpp \
        src/network/cmodbusserver.cpp \
        src/network/cmodbusclient.cpp \
        src/network/ccanbus.cpp \
        src/network/networkframemanager.cpp \
        src/network/JQLibrary/jqhttpserver.cpp \
        src/network/JQLibrary/jqnet.cpp \
        src/network/cchatserver.cpp \
        src/QsLog/QsLog.cpp \
        src/QsLog/QsLogDest.cpp \
        src/QsLog/QsLogDestConsole.cpp \
        src/QsLog/QsLogDestFile.cpp \
        src/QsLog/QsLogDestFunctor.cpp \
        src/network/cwebsocketclient.cpp \
        src/network/cwebsocketserver.cpp \
        src/widgets/libframelesswindow.cpp \
        src/widgets/libmaskwidget.cpp \
        src/widgets/webui/libcwebuimanager.cpp \
        src/widgets/libcmessagebox.cpp
}
else {
    HEADERS += \
        extends/debuger/ldb.h \
        extends/debuger/ldb_core.h \
        extends/debuger/ldb_file.h \
        extends/debuger/ldb_util.h \
        extends/lua5.4/fpconv.h \
        extends/lua5.4/lapi.h \
        extends/lua5.4/lauxlib.h \
        extends/lua5.4/lcode.h \
        extends/lua5.4/lctype.h \
        extends/lua5.4/ldebug.h \
        extends/lua5.4/ldo.h \
        extends/lua5.4/lfunc.h \
        extends/lua5.4/lgc.h \
        extends/lua5.4/ljumptab.h \
        extends/lua5.4/llex.h \
        extends/lua5.4/llimits.h \
        extends/lua5.4/lmem.h \
        extends/lua5.4/lobject.h \
        extends/lua5.4/lopcodes.h \
        extends/lua5.4/lopnames.h \
        extends/lua5.4/lparser.h \
        extends/lua5.4/lprefix.h \
        extends/lua5.4/lstate.h \
        extends/lua5.4/lstring.h \
        extends/lua5.4/ltable.h \
        extends/lua5.4/ltm.h \
        extends/lua5.4/lua.h \
        extends/lua5.4/lua.hpp \
        extends/lua5.4/luaconf.h \
        extends/lua5.4/lualib.h \
        extends/lua5.4/lundump.h \
        extends/lua5.4/lvm.h \
        extends/lua5.4/lzio.h \
        extends/lua5.4/strbuf.h \
        includes/3d/cirrlichtwidget.h \
        includes/3d/cmy3dwidget.h \
        includes/QsLog/QsLog.h \
        includes/QsLog/QsLogDest.h \
        includes/QsLog/QsLogDestConsole.h \
        includes/QsLog/QsLogDestFile.h \
        includes/QsLog/QsLogDestFunctor.h \
        includes/QsLog/QsLogDisableForThisFile.h \
        includes/QsLog/QsLogLevel.h \
        includes/breakpad/auto_critical_section.h \
        includes/breakpad/breakpad_types.h \
        includes/breakpad/client_info.h \
        includes/breakpad/crash_generation_client.h \
        includes/breakpad/crash_generation_server.h \
        includes/breakpad/crash_report_sender.h \
        includes/breakpad/exception_handler.h \
        includes/breakpad/guid_string.h \
        includes/breakpad/http_upload.h \
        includes/breakpad/ipc_protocol.h \
        includes/breakpad/minidump_cpu_amd64.h \
        includes/breakpad/minidump_cpu_arm.h \
        includes/breakpad/minidump_cpu_arm64.h \
        includes/breakpad/minidump_cpu_mips.h \
        includes/breakpad/minidump_cpu_ppc.h \
        includes/breakpad/minidump_cpu_ppc64.h \
        includes/breakpad/minidump_cpu_sparc.h \
        includes/breakpad/minidump_cpu_x86.h \
        includes/breakpad/minidump_exception_fuchsia.h \
        includes/breakpad/minidump_exception_linux.h \
        includes/breakpad/minidump_exception_mac.h \
        includes/breakpad/minidump_exception_ps3.h \
        includes/breakpad/minidump_exception_solaris.h \
        includes/breakpad/minidump_exception_win32.h \
        includes/breakpad/minidump_format.h \
        includes/breakpad/minidump_generator.h \
        includes/breakpad/scoped_ptr.h \
        includes/breakpad/string_utils-inl.h \
        includes/common/NedAllocatedObject.h \
        includes/common/NedAllocatorImpl.h \
        includes/common/Scheduledtasks.h \
        includes/common/malloc.c.h \
        includes/common/nedmalloc.h \
        includes/common/singleton.h \
        includes/common/common.h \
        includes/common/rc4.h \
        includes/common/cJSON.h \
        includes/common/CJsonObject.hpp \
        includes/common/resourcemanager.h \
        includes/common/fastlz.h \
        includes/common/quicklz.h \
        includes/common/ctranslate.h \
        includes/common/SystemTrayIcon.h \
        includes/common/singleapplication.h \
        includes/common/packagemanager.h \
        includes/database/ndbpool/mssqldataprovider.h \
        includes/database/ndbpool/ndbpool.h \
        includes/database/ndbpool/ndbpool_p.h \
        includes/database/ndbpool/recordset.h \
        includes/database/ndbpool/sqlitedataprovider.h \
        includes/database/SQLiteCpp/sqlite3.h \
        includes/database/SQLiteCpp/Assertion.h \
        includes/database/SQLiteCpp/Backup.h \
        includes/database/SQLiteCpp/Column.h \
        includes/database/SQLiteCpp/Database.h \
        includes/database/SQLiteCpp/Exception.h \
        includes/database/SQLiteCpp/ExecuteMany.h \
        includes/database/SQLiteCpp/SQLiteCpp.h \
        includes/database/SQLiteCpp/SQLiteCppExport.h \
        includes/database/SQLiteCpp/Savepoint.h \
        includes/database/SQLiteCpp/Statement.h \
        includes/database/SQLiteCpp/Transaction.h \
        includes/database/SQLiteCpp/Utils.h \
        includes/database/SQLiteCpp/VariadicBind.h \
        includes/database/tsdb/ctimeseriesdb.h \
        includes/qmqtt/qmqtt.h \
        includes/qmqtt/qmqtt_client.h \
        includes/qmqtt/qmqtt_client_p.h \
        includes/qmqtt/qmqtt_frame.h \
        includes/qmqtt/qmqtt_global.h \
        includes/qmqtt/qmqtt_message.h \
        includes/qmqtt/qmqtt_message_p.h \
        includes/qmqtt/qmqtt_network_p.h \
        includes/qmqtt/qmqtt_networkinterface.h \
        includes/qmqtt/qmqtt_routedmessage.h \
        includes/qmqtt/qmqtt_router.h \
        includes/qmqtt/qmqtt_routesubscription.h \
        includes/qmqtt/qmqtt_socket_p.h \
        includes/qmqtt/qmqtt_socketinterface.h \
        includes/qmqtt/qmqtt_ssl_socket_p.h \
        includes/qmqtt/qmqtt_timer_p.h \
        includes/qmqtt/qmqtt_timerinterface.h \
        includes/qmqtt/qmqtt_websocket_p.h \
        includes/qmqtt/qmqtt_websocketiodevice_p.h \
        includes/scripts/cjsmanager.h \
        includes/scripts/cluamanager.h \
        includes/scripts/cjsdebugger.h \
        includes/scripts/cjsmanager2.h \
        includes/network/cserialportmanager.h \
        includes/network/ctcpsocketclient.h \
        includes/network/ctcpsocketserver.h \
        includes/network/cudpsocket.h \
        includes/network/httplib.h \
        includes/network/chttpserver.h \
        includes/network/csvnversionclient.h \
        includes/network/csvnversionserver.h \
        includes/network/cwebsocketclient.h \
        includes/network/cwebsocketserver.h \
        includes/network/networkframemanager.h \
        includes/network/subandpubserver.h \
        includes/network/subandpubclient.h \
        includes/network/JQLibrary/jqdeclare.h \
        includes/network/JQLibrary/jqhttpserver.h \
        includes/network/JQLibrary/jqnet.h \
        includes/network/cequipmentmanagerserver.h \
        includes/network/libhttp.h \
        includes/network/kcp/ikcp.h \
        includes/network/kcp/kcpobj.h \
        includes/network/qenet.h \
        includes/network/cmodbusserver.h \
        includes/network/cmodbusclient.h \
        includes/network/ccanbus.h \
        includes/network/cchatserver.h \
        includes/multimedia/cremotevoice.h \
        includes/multimedia/avilib.h \
        includes/multimedia/czipmanager.h \
        includes/multimedia/smoothcurve.h \
        includes/multimedia/cremotecamera.h \
        includes/widgets/libframelesswindow.h \
        includes/widgets/libmaskwidget.h \
        includes/widgets/libcwebuimanager.h \
        includes/widgets/libcmessagebox.h

    SOURCES += \
        extends/debuger/ldb.cpp \
        extends/debuger/ldb_file.cpp \
        extends/debuger/ldb_util.cpp \
        extends/lua5.4/fpconv.c \
        extends/lua5.4/lapi.c \
        extends/lua5.4/lauxlib.c \
        extends/lua5.4/lbaselib.c \
        extends/lua5.4/lcode.c \
        extends/lua5.4/lcorolib.c \
        extends/lua5.4/lctype.c \
        extends/lua5.4/ldblib.c \
        extends/lua5.4/ldebug.c \
        extends/lua5.4/ldo.c \
        extends/lua5.4/ldump.c \
        extends/lua5.4/lfunc.c \
        extends/lua5.4/lgc.c \
        extends/lua5.4/linit.c \
        extends/lua5.4/liolib.c \
        extends/lua5.4/llex.c \
        extends/lua5.4/lmathlib.c \
        extends/lua5.4/lmem.c \
        extends/lua5.4/loadlib.c \
        extends/lua5.4/lobject.c \
        extends/lua5.4/lopcodes.c \
        extends/lua5.4/loslib.c \
        extends/lua5.4/lparser.c \
        extends/lua5.4/lstate.c \
        extends/lua5.4/lstring.c \
        extends/lua5.4/lstrlib.c \
        extends/lua5.4/ltable.c \
        extends/lua5.4/ltablib.c \
        extends/lua5.4/ltm.c \
        extends/lua5.4/lua.c \
        extends/lua5.4/lua_cjson.c \
        extends/lua5.4/luac.c \
        extends/lua5.4/lundump.c \
        extends/lua5.4/lutf8lib.c \
        extends/lua5.4/lvm.c \
        extends/lua5.4/lzio.c \
        extends/lua5.4/strbuf.c \
        src/3d/cirrlichtwidget.cpp \
        src/3d/cmy3dwidget.cpp \
        src/breakpad/client_info.cc \
        src/breakpad/crash_generation_client.cc \
        src/breakpad/crash_generation_server.cc \
        src/breakpad/crash_report_sender.cc \
        src/breakpad/exception_handler.cc \
        src/breakpad/guid_string.cc \
        src/breakpad/http_upload.cc \
        src/breakpad/minidump_generator.cc \
        src/breakpad/string_utils.cc \
        src/common/NedAllocatedObject.cpp \
        src/common/NedAllocatorImpl.cpp \
        src/common/Scheduledtasks.cpp \
        src/common/common.cpp \
        src/common/nedmalloc.c \
        src/common/rc4.c \
        src/common/cJSON.c \
        src/common/CJsonObject.cpp \
        src/common/resourcemanager.cpp \
        src/common/ctranslate.cpp \
        src/common/SystemTrayIcon.cpp \
        src/common/fastlz.c \
        src/common/quicklz.c \
        src/common/singleapplication.cpp \
        src/common/packagemanager.cpp \
        src/multimedia/cremotecamera.cpp \
        src/qmqtt/qmqtt_client.cpp \
        src/qmqtt/qmqtt_client_p.cpp \
        src/qmqtt/qmqtt_frame.cpp \
        src/qmqtt/qmqtt_message.cpp \
        src/qmqtt/qmqtt_network.cpp \
        src/qmqtt/qmqtt_router.cpp \
        src/qmqtt/qmqtt_routesubscription.cpp \
        src/qmqtt/qmqtt_socket.cpp \
        src/qmqtt/qmqtt_ssl_socket.cpp \
        src/qmqtt/qmqtt_timer.cpp \
        src/qmqtt/qmqtt_websocket.cpp \
        src/qmqtt/qmqtt_websocketiodevice.cpp \
        src/scripts/cjsmanager.cpp \
        src/scripts/cjsdebugger.cpp \
        src/scripts/cluamanager.cpp \
        src/scripts/cjsmanager2.cpp \
        src/network/cserialportmanager.cpp \
        src/network/ctcpsocketclient.cpp \
        src/network/ctcpsocketserver.cpp \
        src/network/cudpsocket.cpp \
        src/network/kcp/ikcp.cpp \
        src/network/kcp/kcpobj.cpp \
        src/network/csvnversionclient.cpp \
        src/network/csvnversionserver.cpp \
        src/network/subandpubserver.cpp \
        src/network/subandpubclient.cpp \
        src/network/cequipmentmanagerserver.cpp \
        src/network/libhttp.cpp \
        src/network/qenet.cpp \
        src/network/cmodbusserver.cpp \
        src/network/cmodbusclient.cpp \
        src/network/cwebsocketclient.cpp \
        src/network/cwebsocketserver.cpp \
        src/network/chttpserver.cpp \
        src/network/networkframemanager.cpp \
        src/network/ccanbus.cpp \
        src/network/cchatserver.cpp \
        src/QsLog/QsLog.cpp \
        src/QsLog/QsLogDest.cpp \
        src/QsLog/QsLogDestConsole.cpp \
        src/QsLog/QsLogDestFile.cpp \
        src/QsLog/QsLogDestFunctor.cpp \
        src/widgets/libframelesswindow.cpp \
        src/widgets/libmaskwidget.cpp \
        src/widgets/webui/libcwebuimanager.cpp \
        src/widgets/libcmessagebox.cpp \
        src/database/ndbpool/mssqldataprovider.cpp \
        src/database/ndbpool/ndbpool.cpp \
        src/database/ndbpool/ndbpool_p.cpp \
        src/database/ndbpool/sqlitedataprovider.cpp \
        src/database/ndbpool/recordset.cpp \
        src/database/SQLiteCpp/sqlite3.c \
        src/database/SQLiteCpp/Backup.cpp \
        src/database/SQLiteCpp/Column.cpp \
        src/database/SQLiteCpp/Database.cpp \
        src/database/SQLiteCpp/Exception.cpp \
        src/database/SQLiteCpp/Savepoint.cpp \
        src/database/SQLiteCpp/Statement.cpp \
        src/database/SQLiteCpp/Transaction.cpp \
        src/database/tsdb/ctimeseriesdb.cpp \
        src/multimedia/cremotevoice.cpp \
        src/multimedia/avilib.c \
        src/multimedia/czipmanager.cpp \
        src/multimedia/smoothcurve.cpp \
        src/network/JQLibrary/jqhttpserver.cpp \
        src/network/JQLibrary/jqnet.cpp
}

FORMS += \
    src/widgets/libcmessagebox.ui

SUBDIRS += \
    qtcore.pro

HEADERS += \
    includes/3d/glm/common.hpp \
    includes/3d/glm/detail/_features.hpp \
    includes/3d/glm/detail/_fixes.hpp \
    includes/3d/glm/detail/_noise.hpp \
    includes/3d/glm/detail/_swizzle.hpp \
    includes/3d/glm/detail/_swizzle_func.hpp \
    includes/3d/glm/detail/_vectorize.hpp \
    includes/3d/glm/detail/func_common.hpp \
    includes/3d/glm/detail/func_common.inl \
    includes/3d/glm/detail/func_common_simd.inl \
    includes/3d/glm/detail/func_exponential.hpp \
    includes/3d/glm/detail/func_exponential.inl \
    includes/3d/glm/detail/func_exponential_simd.inl \
    includes/3d/glm/detail/func_geometric.hpp \
    includes/3d/glm/detail/func_geometric.inl \
    includes/3d/glm/detail/func_geometric_simd.inl \
    includes/3d/glm/detail/func_integer.hpp \
    includes/3d/glm/detail/func_integer.inl \
    includes/3d/glm/detail/func_integer_simd.inl \
    includes/3d/glm/detail/func_matrix.hpp \
    includes/3d/glm/detail/func_matrix.inl \
    includes/3d/glm/detail/func_matrix_simd.inl \
    includes/3d/glm/detail/func_packing.hpp \
    includes/3d/glm/detail/func_packing.inl \
    includes/3d/glm/detail/func_packing_simd.inl \
    includes/3d/glm/detail/func_trigonometric.hpp \
    includes/3d/glm/detail/func_trigonometric.inl \
    includes/3d/glm/detail/func_trigonometric_simd.inl \
    includes/3d/glm/detail/func_vector_relational.hpp \
    includes/3d/glm/detail/func_vector_relational.inl \
    includes/3d/glm/detail/func_vector_relational_simd.inl \
    includes/3d/glm/detail/precision.hpp \
    includes/3d/glm/detail/setup.hpp \
    includes/3d/glm/detail/type_float.hpp \
    includes/3d/glm/detail/type_gentype.hpp \
    includes/3d/glm/detail/type_gentype.inl \
    includes/3d/glm/detail/type_half.hpp \
    includes/3d/glm/detail/type_half.inl \
    includes/3d/glm/detail/type_int.hpp \
    includes/3d/glm/detail/type_mat.hpp \
    includes/3d/glm/detail/type_mat.inl \
    includes/3d/glm/detail/type_mat2x2.hpp \
    includes/3d/glm/detail/type_mat2x2.inl \
    includes/3d/glm/detail/type_mat2x3.hpp \
    includes/3d/glm/detail/type_mat2x3.inl \
    includes/3d/glm/detail/type_mat2x4.hpp \
    includes/3d/glm/detail/type_mat2x4.inl \
    includes/3d/glm/detail/type_mat3x2.hpp \
    includes/3d/glm/detail/type_mat3x2.inl \
    includes/3d/glm/detail/type_mat3x3.hpp \
    includes/3d/glm/detail/type_mat3x3.inl \
    includes/3d/glm/detail/type_mat3x4.hpp \
    includes/3d/glm/detail/type_mat3x4.inl \
    includes/3d/glm/detail/type_mat4x2.hpp \
    includes/3d/glm/detail/type_mat4x2.inl \
    includes/3d/glm/detail/type_mat4x3.hpp \
    includes/3d/glm/detail/type_mat4x3.inl \
    includes/3d/glm/detail/type_mat4x4.hpp \
    includes/3d/glm/detail/type_mat4x4.inl \
    includes/3d/glm/detail/type_mat4x4_simd.inl \
    includes/3d/glm/detail/type_vec.hpp \
    includes/3d/glm/detail/type_vec.inl \
    includes/3d/glm/detail/type_vec1.hpp \
    includes/3d/glm/detail/type_vec1.inl \
    includes/3d/glm/detail/type_vec2.hpp \
    includes/3d/glm/detail/type_vec2.inl \
    includes/3d/glm/detail/type_vec3.hpp \
    includes/3d/glm/detail/type_vec3.inl \
    includes/3d/glm/detail/type_vec4.hpp \
    includes/3d/glm/detail/type_vec4.inl \
    includes/3d/glm/detail/type_vec4_simd.inl \
    includes/3d/glm/exponential.hpp \
    includes/3d/glm/ext.hpp \
    includes/3d/glm/fwd.hpp \
    includes/3d/glm/geometric.hpp \
    includes/3d/glm/glm.hpp \
    includes/3d/glm/gtc/bitfield.hpp \
    includes/3d/glm/gtc/bitfield.inl \
    includes/3d/glm/gtc/color_encoding.inl \
    includes/3d/glm/gtc/color_space.hpp \
    includes/3d/glm/gtc/color_space.inl \
    includes/3d/glm/gtc/constants.hpp \
    includes/3d/glm/gtc/constants.inl \
    includes/3d/glm/gtc/epsilon.hpp \
    includes/3d/glm/gtc/epsilon.inl \
    includes/3d/glm/gtc/functions.hpp \
    includes/3d/glm/gtc/functions.inl \
    includes/3d/glm/gtc/integer.hpp \
    includes/3d/glm/gtc/integer.inl \
    includes/3d/glm/gtc/matrix_access.hpp \
    includes/3d/glm/gtc/matrix_access.inl \
    includes/3d/glm/gtc/matrix_integer.hpp \
    includes/3d/glm/gtc/matrix_inverse.hpp \
    includes/3d/glm/gtc/matrix_inverse.inl \
    includes/3d/glm/gtc/matrix_transform.hpp \
    includes/3d/glm/gtc/matrix_transform.inl \
    includes/3d/glm/gtc/noise.hpp \
    includes/3d/glm/gtc/noise.inl \
    includes/3d/glm/gtc/packing.hpp \
    includes/3d/glm/gtc/packing.inl \
    includes/3d/glm/gtc/quaternion.hpp \
    includes/3d/glm/gtc/quaternion.inl \
    includes/3d/glm/gtc/quaternion_simd.inl \
    includes/3d/glm/gtc/random.hpp \
    includes/3d/glm/gtc/random.inl \
    includes/3d/glm/gtc/reciprocal.hpp \
    includes/3d/glm/gtc/reciprocal.inl \
    includes/3d/glm/gtc/round.hpp \
    includes/3d/glm/gtc/round.inl \
    includes/3d/glm/gtc/type_aligned.hpp \
    includes/3d/glm/gtc/type_precision.hpp \
    includes/3d/glm/gtc/type_precision.inl \
    includes/3d/glm/gtc/type_ptr.hpp \
    includes/3d/glm/gtc/type_ptr.inl \
    includes/3d/glm/gtc/ulp.hpp \
    includes/3d/glm/gtc/ulp.inl \
    includes/3d/glm/gtc/vec1.hpp \
    includes/3d/glm/gtc/vec1.inl \
    includes/3d/glm/gtx/associated_min_max.hpp \
    includes/3d/glm/gtx/associated_min_max.inl \
    includes/3d/glm/gtx/bit.hpp \
    includes/3d/glm/gtx/bit.inl \
    includes/3d/glm/gtx/closest_point.hpp \
    includes/3d/glm/gtx/closest_point.inl \
    includes/3d/glm/gtx/color_space.hpp \
    includes/3d/glm/gtx/color_space.inl \
    includes/3d/glm/gtx/color_space_YCoCg.hpp \
    includes/3d/glm/gtx/color_space_YCoCg.inl \
    includes/3d/glm/gtx/common.hpp \
    includes/3d/glm/gtx/common.inl \
    includes/3d/glm/gtx/compatibility.hpp \
    includes/3d/glm/gtx/compatibility.inl \
    includes/3d/glm/gtx/component_wise.hpp \
    includes/3d/glm/gtx/component_wise.inl \
    includes/3d/glm/gtx/dual_quaternion.hpp \
    includes/3d/glm/gtx/dual_quaternion.inl \
    includes/3d/glm/gtx/euler_angles.hpp \
    includes/3d/glm/gtx/euler_angles.inl \
    includes/3d/glm/gtx/extend.hpp \
    includes/3d/glm/gtx/extend.inl \
    includes/3d/glm/gtx/extended_min_max.hpp \
    includes/3d/glm/gtx/extended_min_max.inl \
    includes/3d/glm/gtx/fast_exponential.hpp \
    includes/3d/glm/gtx/fast_exponential.inl \
    includes/3d/glm/gtx/fast_square_root.hpp \
    includes/3d/glm/gtx/fast_square_root.inl \
    includes/3d/glm/gtx/fast_trigonometry.hpp \
    includes/3d/glm/gtx/fast_trigonometry.inl \
    includes/3d/glm/gtx/float_notmalize.inl \
    includes/3d/glm/gtx/gradient_paint.hpp \
    includes/3d/glm/gtx/gradient_paint.inl \
    includes/3d/glm/gtx/handed_coordinate_space.hpp \
    includes/3d/glm/gtx/handed_coordinate_space.inl \
    includes/3d/glm/gtx/hash.hpp \
    includes/3d/glm/gtx/hash.inl \
    includes/3d/glm/gtx/integer.hpp \
    includes/3d/glm/gtx/integer.inl \
    includes/3d/glm/gtx/intersect.hpp \
    includes/3d/glm/gtx/intersect.inl \
    includes/3d/glm/gtx/io.hpp \
    includes/3d/glm/gtx/io.inl \
    includes/3d/glm/gtx/log_base.hpp \
    includes/3d/glm/gtx/log_base.inl \
    includes/3d/glm/gtx/matrix_cross_product.hpp \
    includes/3d/glm/gtx/matrix_cross_product.inl \
    includes/3d/glm/gtx/matrix_decompose.hpp \
    includes/3d/glm/gtx/matrix_decompose.inl \
    includes/3d/glm/gtx/matrix_interpolation.hpp \
    includes/3d/glm/gtx/matrix_interpolation.inl \
    includes/3d/glm/gtx/matrix_major_storage.hpp \
    includes/3d/glm/gtx/matrix_major_storage.inl \
    includes/3d/glm/gtx/matrix_operation.hpp \
    includes/3d/glm/gtx/matrix_operation.inl \
    includes/3d/glm/gtx/matrix_query.hpp \
    includes/3d/glm/gtx/matrix_query.inl \
    includes/3d/glm/gtx/matrix_transform_2d.hpp \
    includes/3d/glm/gtx/matrix_transform_2d.inl \
    includes/3d/glm/gtx/mixed_product.hpp \
    includes/3d/glm/gtx/mixed_product.inl \
    includes/3d/glm/gtx/norm.hpp \
    includes/3d/glm/gtx/norm.inl \
    includes/3d/glm/gtx/normal.hpp \
    includes/3d/glm/gtx/normal.inl \
    includes/3d/glm/gtx/normalize_dot.hpp \
    includes/3d/glm/gtx/normalize_dot.inl \
    includes/3d/glm/gtx/number_precision.hpp \
    includes/3d/glm/gtx/number_precision.inl \
    includes/3d/glm/gtx/optimum_pow.hpp \
    includes/3d/glm/gtx/optimum_pow.inl \
    includes/3d/glm/gtx/orthonormalize.hpp \
    includes/3d/glm/gtx/orthonormalize.inl \
    includes/3d/glm/gtx/perpendicular.hpp \
    includes/3d/glm/gtx/perpendicular.inl \
    includes/3d/glm/gtx/polar_coordinates.hpp \
    includes/3d/glm/gtx/polar_coordinates.inl \
    includes/3d/glm/gtx/projection.hpp \
    includes/3d/glm/gtx/projection.inl \
    includes/3d/glm/gtx/quaternion.hpp \
    includes/3d/glm/gtx/quaternion.inl \
    includes/3d/glm/gtx/range.hpp \
    includes/3d/glm/gtx/raw_data.hpp \
    includes/3d/glm/gtx/raw_data.inl \
    includes/3d/glm/gtx/rotate_normalized_axis.hpp \
    includes/3d/glm/gtx/rotate_normalized_axis.inl \
    includes/3d/glm/gtx/rotate_vector.hpp \
    includes/3d/glm/gtx/rotate_vector.inl \
    includes/3d/glm/gtx/scalar_multiplication.hpp \
    includes/3d/glm/gtx/scalar_relational.hpp \
    includes/3d/glm/gtx/scalar_relational.inl \
    includes/3d/glm/gtx/spline.hpp \
    includes/3d/glm/gtx/spline.inl \
    includes/3d/glm/gtx/std_based_type.hpp \
    includes/3d/glm/gtx/std_based_type.inl \
    includes/3d/glm/gtx/string_cast.hpp \
    includes/3d/glm/gtx/string_cast.inl \
    includes/3d/glm/gtx/transform.hpp \
    includes/3d/glm/gtx/transform.inl \
    includes/3d/glm/gtx/transform2.hpp \
    includes/3d/glm/gtx/transform2.inl \
    includes/3d/glm/gtx/type_aligned.hpp \
    includes/3d/glm/gtx/type_aligned.inl \
    includes/3d/glm/gtx/type_trait.hpp \
    includes/3d/glm/gtx/type_trait.inl \
    includes/3d/glm/gtx/vector_angle.hpp \
    includes/3d/glm/gtx/vector_angle.inl \
    includes/3d/glm/gtx/vector_query.hpp \
    includes/3d/glm/gtx/vector_query.inl \
    includes/3d/glm/gtx/wrap.hpp \
    includes/3d/glm/gtx/wrap.inl \
    includes/3d/glm/integer.hpp \
    includes/3d/glm/mat2x2.hpp \
    includes/3d/glm/mat2x3.hpp \
    includes/3d/glm/mat2x4.hpp \
    includes/3d/glm/mat3x2.hpp \
    includes/3d/glm/mat3x3.hpp \
    includes/3d/glm/mat3x4.hpp \
    includes/3d/glm/mat4x2.hpp \
    includes/3d/glm/mat4x3.hpp \
    includes/3d/glm/mat4x4.hpp \
    includes/3d/glm/matrix.hpp \
    includes/3d/glm/packing.hpp \
    includes/3d/glm/simd/common.h \
    includes/3d/glm/simd/exponential.h \
    includes/3d/glm/simd/geometric.h \
    includes/3d/glm/simd/integer.h \
    includes/3d/glm/simd/matrix.h \
    includes/3d/glm/simd/packing.h \
    includes/3d/glm/simd/platform.h \
    includes/3d/glm/simd/trigonometric.h \
    includes/3d/glm/simd/vector_relational.h \
    includes/3d/glm/trigonometric.hpp \
    includes/3d/glm/vec2.hpp \
    includes/3d/glm/vec3.hpp \
    includes/3d/glm/vec4.hpp \
    includes/3d/glm/vector_relational.hpp \
    includes/3d/stb_image.h

SOURCES += \
    src/3d/stb_image.cpp
